Field
This application relates to computer systems, and more particularly to a method of network Basic Input/Output System (BIOS) management, storage, and boot for computer servers.
Background
In a typical computer system (e.g., a rack server in a data center), a BIOS software program is stored on a BIOS memory (e.g., flash memory) located on a motherboard of the computer system. The BIOS stores firmware executed when the computer system is first powered on, along with a set of configurations specified for the BIOS. The BIOS firmware and BIOS configurations are stored in a non-volatile memory such as a non-volatile random-access memory (NVRAM) or a read-only memory (ROM) such as flash memory. The BIOS typically recognizes, initializes, and tests hardware present in a given computing system based on the set of configurations. The BIOS then gives control of the computer system to an operating system. The BIOS can provide an interface that allows a variety of different parameters to be set. For example, the BIOS may be used to specify clock and bus speeds, specify what peripherals are attached to the computer system, specify monitoring of health (e.g., fan speeds and CPU temperature limits), and specify a variety of other parameters that affect overall performance and power usage of the computer system.
Traditionally, each computer server in a data center contains a separate BIOS memory. Each BIOS is configured according to a configuration for each computer server. The administrator can update the BIOS using a flash utility application in the OS.